Timeslot sharing over different cycles in tdma bus

ABSTRACT

The invention relates to a method of transmitting user data via a communications medium ( 2 ) between subscribers ( 3 ) connected to the communications medium ( 2 ), wherein the data are transmitted in recurrent cycles ( 8 ) and at least one slot ( 9, 10 ) in each cycle ( 8 ) is intended for the user data of at least one subscriber ( 3 ). In order to permit a particularly efficient data transmission via the communications medium ( 2 ) at least one of the slots ( 10 ) is used to transmit the user data of different subscribers ( 3 ) (A, C, F) in different cycles ( 8 ). In addition, a bus guardian ( 6 ) of one subscriber ( 3 ) determines whether the subscriber ( 3 ) may transmit user data in the current slot ( 9, 10 ) of the current cycle ( 8 ), the bus guardian ( 6 ) having at least indirect access to a universal condition available throughout the entire communications system ( 1 ). In particular, an internal counter of the bus guardian ( 6 ) is synchronized to a universal cycle counter.

The present invention relates to a method of transmitting user data viaa communications medium between subscribers connected to thecommunications medium. The data are transmitted in recurrent cycles. Ineach cycle at least one slot is intended for the user data of at leastone subscriber.

The invention further relates to a computer program which is capable ofrunning on a computing element, particularly on a microprocessor.

The present invention furthermore relates to a subscriber which isconnected to a communications medium and transmits user data via thecommunications medium to other subscribers connected to thecommunications medium. The data are transmitted in recurrent cycles. Ineach cycle at least one slot is intended for the user data of at leastone subscriber.

In addition the invention relates to a bus guardian, which is assignedto a subscriber connected to a communications medium. The subscribertransmits user data via the communications medium to other subscribersconnected to the communications medium. The data are transmitted inrecurrent cycles. In each cycle at least one slot is intended for theuser data of at least one subscriber.

The invention finally also relates to a communications system comprisinga communications medium and a plurality of subscribers connectedthereto. User data are transmitted between the subscribers in recurrentcycles via the communications medium. In each cycle at least one slot isintended for the user data of at least one subscriber.

For the next generation of time-controlled communications systems it isproposed to use a so-called bus guardian. Each bus guardian is assignedto a specific subscriber on the communications system. The bus guardianhas information on when the subscriber assigned to it may transmit dataand when it may not. The bus guardians serve to prevent defectivesubscribers on the communications system continuously transmitting dataand blocking the communications medium. Such defective subscribers arealso referred to as babbling idiots. The bus guardian derives a controlsignal from an independent set of configuration data and by means of thecontrol signal allows the subscriber access to the communications mediumonly for selected time slots, for which the subscriber's communicationscontroller (CC) may transmit data. This prevents a defectivecommunications controller and/or a defective subscriber monopolizing thecommunications medium.

A TDMA (time division multiple access) system is generally used asaccess system to the communications medium. In this system a predefinedperiod of a so-called cycle is divided into multiple time slots, each ofthe time slots being of a specific (generally constant) length. In eachslot only one communications controller of a specific subscriber maytransmit data.

Whilst the bus guardian can be configured by means of informationrelating to the slot, in which the communications controller assigned tothe bus guardian may transmit data, the bus guardian lacks the abilityto determine the start of a cycle from the data received or from thecommunication via the communications medium. In order to be able toderive this autonomously, the bus guardian would have to comprehend andinterpret the communication via the communications medium, which would,however, make the bus guardian extremely complex, prone to error andexpensive. For this reason the communications controller has to send atrigger signal (the so-called ARM signal) to the bus guardian, in orderto indicate the start of the first cycle in which the communicationscontroller intends to transmit slots. The bus guardian can thenautonomously infer the start of the ensuing cycles from theirconfiguration and can compare this knowledge with the continuouslyincoming ARM signal from the communications controller. The ARM signalindicates when the internal sequence of the cycle inside thecommunications controller begins. Should the bus guardian detect adiscrepancy between its own view of the start of the cycle and that ofthe communications controller, it deactivates the transmissioncapability of the subscriber, a defective subscriber or communicationscontroller thereby being compelled to remain silent (so-calledfail-silent behavior), which is advantageous in restricting errors inthe communications system.

In an error-tolerant communications system a TDMA system is used inorder to ensure a uniform and reliable data transmission. Since highlyprecise timer synchronization algorithms presuppose shortresynchronization cycles, only a limited number of slots will fit intoin one communications cycle.

It is an object of the invention, therefore, to provide a particularlyefficient data transmission via the communications medium.

Proceeding from the aforementioned method of transmitting user data, thepresent invention proposes to achieve this object by using at least oneof the slots to transmit the user data of different subscribers indifferent cycles.

According to the invention, therefore, proposed to assign at least oneso-called shared slot of the cycle is assigned not just to one singlesubscriber but to multiple subscribers as a function of the currentcycle. This means, for example, that in a first cycle a first subscriberon the communications system can transmit user data via thecommunications medium, in a second cycle a second subscriber cantransmit user data via the communications medium and in a third cycle athird subscriber can transmit data via the communications medium usingone and the same slot. Although this reduces the attainable band widthfor the data transmission of a subscriber, in many applications such areduced band width will be sufficient for. The net result therefore isthat more subscribers can then be connected to a communications mediumwithout having to increase the cycle times.

For the purposes of the present invention user data basically compriseany type of data and information. In particular, the communicationssystem also comprises messages and signaling data using information tocontrol the communication sequence.

According to one advantageous further embodiment of the presentinvention one of the subscribers decides, on the basis of a conditionavailable universally to all subscribers, whether in the current cycleit may transmit user data in at least one shared slot. According to thisfurther embodiment there is therefore no higher-ranking unit in thecommunications system granting transmission entitlement to theindividual subscribers. Instead, each subscriber on the communicationssystem decides for itself whether in the current cycle it may transmituser data via the shared slot. This decision is made by all subscriberson the communications system on the basis of the same universallyavailable condition.

According to a preferred embodiment of the present invention a cyclecounter is used as universally available condition, by means of which acode is assigned to each of the successive cycles within a metacycle,one metacycle comprising a plurality of cycles. The cycle counterassigns to each cycle a largely unambiguous code within the metacycle.Between two cycles the cycle counter adjusts its value in the same wayand at the same time in a manner detectable by all subscribers (withinthe accuracy of the communications system). Normally the cycle counterbehaves cyclically, so that the value of the cycle counter periodicallyrepeats itself after a specific number of cycles. The longest period oftime over which the cycle counter does not repeat itself, is referred toas the so-called metacycle. The cycle counter enables differentcommunications controllers or subscribers to share a slot, on conditionthat for each cycle counter value only one subscriber has permission totransmit data via the shared slot.

The cycle counter consequently defines so-called subslots for thoseslots which can be used to transmit the user data of differentsubscribers in different cycles. Whilst according to the invention theseslots can therefore be used by multiple subscribers, only one subscriberis assigned to each subslot. At least one subslot of the shared slot isassigned to each subscriber which in at least one cycle is allowed touse, the common slot in order to transmit data. A subslot is providedfor each value of the cycle counter. The subslots are distributedbetween the subscribers on the communications system. A communicationssystem may also contain multiple shared slots useable by differentsubscribers.

A communications controller can access multiple subslots, in one or moredifferent shared slots.

Since a bus guardian per se does not have any information on the currentvalue of the cycle counter, it cannot monitor the shared slots. Forslots in which, depending on the current cycle, different subscriberscan transmit user data, the bus guardian must therefore always allow thesubscriber assigned to it to transmit data. This means that whereas inslots useable by only one subscriber, only this one subscriber receivespermission from its assigned bus guardian to transmit data, in the caseof shared slots theoretically all the subscribers on the communicationssystem which share the use of this slot can transmit data. If one of thesubscribers is defective, therefore, and constantly transmits data viathe communications system, this defective subscriber could block theentire communications medium, at least in the slots shared (so-calledbabbling idiot). In the case of shared slots, therefore, the busguardian cannot fulfill the function for which it was actually intended.

In order to remedy this, according to another advantageous furtherembodiment of the present invention a bus guardian assigned to one ofthe subscribers determines whether the subscriber may transmit user datain the current slot of the current cycle, the bus guardian having atleast indirect access to the universally available condition, inparticular the cycle counter. There are various possible ways ofsynchronizing the bus guardian to the universally available cyclecounter.

In a first step the cycle counter in the communications controller mustbe monitored. For this purpose the cycle counter between thecommunications controller and the bus guardian must be synchronized.Following an initial synchronization the bus guardian can monitor thecyclical behavior of the cycle counter of the communications controller.Both the initial synchronization and the subsequent monitoring may beperformed directly or indirectly.

In a second step the bus guardian must monitor the access pattern of thecommunications controller to the communications medium. Various levelsof protection are possible here, and these will be described in detailbelow. Unless otherwise specified, it is hereinafter assumed that thebus guardian has information on which subslots in which shared slots areallocated to the subscriber assigned to the bus guardian.

According to a further preferred embodiment of the invention the busguardian has a counter, which is synchronized with the cycle counter.The bus guardian counter constitutes an internal structure of the busguardian which can be achieved with little additional cost. Thesynchronization of this counter to the universally available cyclecounter may be performed directly or indirectly.

A direct synchronization can be advantageously performed by using asynchronization signal to synchronize the bus guardian counter with thecycle counter. A signal already present in the bus guardian may be usedas synchronization signal. An example of such a signal is the ARM signalof the communications controller. In addition to the usualsynchronization mechanism of the ARM signal, a synchronization signal isdefined which ensures that the bus guardian and the communicationscontroller have the same view of the cycle counter. By enabling the busguardian to detect the current value of the cycle counter, the busguardian can also monitor the shared slot in different cycles. The busguardian allows the subscriber assigned to it access to thecommunications medium on a shared slot only for specific, predeterminedvalues of the cycle counter.

At a preset time, the so-called synchronization time, the signal alreadypresent in the bus guardian advantageously assumes a predefinable valueand the bus guardian counter is synchronized to the cycle counter whenthe signal assumes the predefinable value. It is feasible to use theunmodified ARM signal for the purpose of synchronization: the initialsynchronization is performed when the cycle counter assumes apredefinable value. At this synchronization time an ARM trigger permitssynchronization of the bus guardian to the transmission system and thecycle counter. Since a large number of different cycle counter valuescan occur with the need, in the worst case, to evaluate a completemetacycle, until the signal assumes the predefinable value, thisrelatively simple embodiment can lead to a long initial delay before theinitial synchronization can be performed. For this reason, thisembodiment is only suitable for less safety-relevant applications, sincesafety relevant applications generally need to be capable of rapidstart-up, for example following a reset triggered by a fault.

The bus guardian counter is advantageously synchronized to the cyclecounter the first time that the signal already present in the busguardian assumes the predefinable value.

Another possible method of directly synchronizing the bus guardian tothe condition universally available in the communications medium is touse a separate signal, not originally present in the bus guardian, assynchronization signal. The separate signal not originally present inthe bus guardian may be a signal which as such already exists but whichassumes entirely new signal values and signal patterns. In particular,the bus guardian counter is synchronized to the cycle counter when asignal already present in the bus guardian corresponds to a specificsignal pattern. This embodiment can be achieved by using a signal whichas such already exists but which assumes exceptional signal values orsignal patterns hitherto unencountered. Examples of such exceptionalsignal values or signal patterns include a prolonged signal pulse, amultiple signal pulse, in particular a double pulse, or any other typeof signal pattern.

However, the separate signal not originally present in the bus guardianmay also be an entirely new signal, which is applied to the bus guardianvia an additional or hitherto unused pin of the bus guardian. Thisserves to prevent misunderstandings or misinterpretations of a signalalready present in the bus guardian, such as the ARM signal.

The synchronization signal synchronizes the bus guardian to theuniversally available condition, so that at the occurrence of thesynchronization signal the bus guardian can also monitor thetransmission mode of the communications controller, assigned to it, inthe shared slot. Following synchronization, the bus guardian will permita transmission mode of the assigned subscriber via the shared slots onlyfor predefinable values of the cycle counter. The bus guardian can alsomonitor the cycle counter, since the communications controller must givethe separate signal not originally present (e.g. the special ARM signal)each time that the cycle counter assumes the preset value. If a separatesignal not originally present (e.g. the special ARM signal) isanticipated but is not forthcoming, although the internal counter pointsto a corresponding cycle counter value, a failure of the communicationscontroller can be inferred. In this way the bus guardian and thecommunications controller cannot lose the synchronization without thebus guardian detecting this. Should the synchronization be lost, the busguardian will permit no further data transmission of the communicationscontroller and will set this to the so-called fail-silent state. In thisway it is possible to prevent the dangerous effects which a defectivesubscriber may have on the entire communications system.

For indirect synchronization of the bus guardian to the universallyavailable condition the bus guardian counter is synchronized in that thebus guardian observes the transmission mode of the subscriber assignedto it and synchronizes the counter accordingly. According to thisembodiment, the bus guardian learns the sequence of accesses by thesubscriber to the means of communications, in particular from theaccesses observed at the start of data communications. From the outset,the bus guardian opens the shared slot, useable by multiple subscribersin different cycles. The communications controller waits for thesmallest value of the cycle counter, for which it may access a subslotof a shared slot. The communications controller performs its first datatransmission during this subslot.

The initial access to the communications medium by the communicationscontroller via the shared slot is detected by the bus guardian andlinked with the smallest value of the cycle counter at which thecommunications controller may transmit data. Now both the bus guardianand the communications controller have the same view of the cyclecounter. Henceforth the bus guardian will permit data transmission bythe communications controller via the communications medium only in thepredetermined subslots of the shared slots, that is to say in thepredetermined cycles. Should the subscriber use multiple shared slots,the initial data transmission triggers the synchronization in any one ofthese shared slots.

The bus guardian is capable of detecting an inadmissible access to thecommunications medium by the subscriber in the shared slots. Should thecommunications controller of the subscriber need to transmit data in thesubslots assigned to it, the bus guardian can also monitor the cyclecounter of the communications controller. Otherwise a quiescentcommunications controller (one not transmitting any data) might driftout of synchronization without the bus guardian detecting this.

Should no local information be available on the access sequence to thecommunications medium by the subscribers, the bus guardian uses theinitial access to the communications medium by the communicationscontroller during a shared slot in order to initialize its local counterwith a predefinable value. This value need not necessarily be equal tothe value of the cycle counter in the communications controller; butboth the bus guardian counter and the cycle counter of thecommunications controller behave in the same cyclical way.

According to another advantageous further embodiment of the presentinvention, information on which slot and which cycle the subscriberassigned to the bus guardian may use to transmit user data is filed inthe bus guardian as a preliminary to the data transmission. In this casetherefore the bus guardian is preconfigured with the values of the cyclecounter for each shared slot in which the subscriber assigned to the busguardian or its communications controller may transmit data via thecommunications medium. This information can also be transmitted to thebus guardian by the host controller of the subscriber, once thecommunications system or the subscriber has been started up. This isadvantageous, in particular, when the access sequence to the shared slotis dynamically allocated by a higher-level protocol, since thisallocation is possible only after starting up the communications system.

According to a further preferred embodiment of the invention the busguardian obtains information on which slot and which cycle thesubscriber may use to transmit user data by observing the transmissionmode of the subscriber assigned to it, and the information is filed inthe bus guardian. In particular, information is obtained by the busguardian under certain boundary conditions. Examples of these boundaryconditions include the maximum number of admissible accesses to theshared slot by a subscriber during one metacycle. If the communicationscontroller of the subscriber is defective from the outset therefore, andis constantly seeking to access the communications medium via the sharedslot, such a fault will be detected by the bus guardian as soon as thecommunications controller seeks to access the communications medium viathe shared slot more frequently than is admissible within a cycle,. Inthis way it is possible to ensure a certain minimum bandwidth in thecommunications system from the outset.

For safety reasons it may be a problem to amend the information forconfiguring the bus guardian during the running time. In this case thedegree of monitoring security may be reduced, the information used toconfigure the bus guardian consisting solely of the number of subslotsfor the communications controller assigned to the bus guardian for eachshared slot. When the subscriber assigned to the bus guardian hastherefore already accessed the communications medium a number of timesequal to the number of subslots filed in the bus guardian, the busguardian prevents any further access by the subscriber in this cycle.

Depending on the permissible complexity or the need for safeguards, twofurther possibilities are feasible which do not require anyconfiguration of the bus guardian by the host controller of thesubscriber using all the sequence information on access to thecommunications medium by the communications controller:

One possibility relates to safeguarding of the bandwidth. Firstly thebus guardian can detect the number of subslots in which the assignedcommunications controller may transmit data in the existing sharedslots.

For a direct synchronization, the bus guardian first blocks the accessto the communications medium by the communications controller in allshared slots. From the first synchronization event, the bus guardianallows the communications controller access to the shared slots for allshared slots. For an indirect synchronization access to thecommunications medium is permitted from the outset.

The bus guardian has a counter of its own for each shared slot. Eachaccess to the communications medium by the communications controller inthis shared slot increases the counter. As soon as the counter reaches apredefinable maximum value the bus guardian blocks the access to thecommunications medium via the shared slots from the succeeding cycleonwards. The predefinable maximum value is equal to the number ofassigned subslots for this shared slot.

The local bus guardian counter is reset either by the cycle countersynchronization signal or when, according to the internal understandingof the bus guardian, the cycle counter has completed a full cyclerunning through all possible values.

In this way it is possible to prevent the communications controlleroccupying more than the bandwidth of a specific shared slot assigned toit. However, this does not serve to prevent the communicationscontroller transmitting data during subslots in which the communicationscontroller really should not transmit. Nevertheless, the volume ofcommunications on the communications medium that may be adverselyaffected by a defective communications controller can be markedlyreduced compared to one without monitoring. Furthermore, this option isrelatively easy to implement and is well-suited to dynamic slotallocation, since no configuration data are required in the bus guardianthat are not already available before starting up the communicationssystem.

A further possibility which does not require any configuration of thebus guardian by the host controller using all the sequence informationon access to the communications medium is the self-configuring busguardian.

The bus guardian detects the number of subslots in which thecommunications controller assigned to it may transmit data for each ofthe existing shared slots.

For a direct synchronization the bus guardian first blocks access to thecommunications medium by the communications controller in all sharedslots. From the first synchronization onwards, the bus guardian allowsthe communications controller access to the communications medium in allshared slots. For indirect synchronization access to the communicationsmedium is possible from the outset.

During the first metacycle the bus guardian observes very closely theaccess behavior of the communications controller assigned to it. The busguardian stores the access pattern of the communications controller inits internal configuration register. The first metacycle is startedeither by the first direct synchronization event or, in the case ofindirect synchronization, by the first transmission event of thecommunications controller in a subslot of a shared slot. The firstmetacycle is terminated when the cycle counter has run through allvalues which it can theoretically assume.

After the first metacycle, the bus guardian blocks access to thecommunications medium during all shared slots with the exception ofthose subslots of the shared slots in which the communicationscontroller has transmitted data during the first metacycle.

Even during the first metacycle, the bus guardian can afford the sameprotection as in the first possible method described above, in whichaccess to the communications medium is limited to specific subslots. Aninitially fault-free communications controller cannot corrupt thecommunication in the shared slot, since the configuration of the busguardian cannot be modified. A defective communications controllercannot disrupt just any slot, but only the same slot in each cycle. Anintelligent applications level could detect such behavior and divert thecorrupted information.

The present invention can be implemented in hardware. However, theimplementation of the method according to the invention in the form of acomputer program is of particular significance.. In this case thecomputer program is capable of running on a computing element, inparticular on a microprocessor, and is programmed to perform the methodaccording to the invention. Here, therefore, the invention isimplemented by the computer program, so that this computer programrepresents the invention in the same way as the method it is programmedto execute. The computer program is preferably stored on a memorystorage element. In particular, an electrical storage medium, such as arandom access memory, a read-only memory or a flash memory may be usedas storage medium.

Proceeding from a subscriber of the aforementioned type, the object ofthe present invention is further achieved in that at least one of theslots in different cycles is intended for the transmission of user dataof different subscribers, and the subscriber in a predefinable cycletransmits user data in the shared slot.

Proceeding from a bus guardian of the aforementioned type, the object ofthe present invention is further achieved in that at least one slot isprovided via which user data of different subscribers can be transmittedin different cycles, the bus guardian checking whether the subscribermay transmit user data in the current slot of the current cycle.

Finally, proceeding from a communications system of the aforementionedtype the object of the present invention is further achieved in that atleast one of the slots is intended for the transmission of the user dataof different subscribers in different cycles.

The invention will be further described with reference to examples ofembodiments shown in the drawings to which, however, the invention isnot restricted, and in which:

FIG. 1 shows a preferred embodiment of a communications system accordingto the invention;

FIG. 2 shows a preferred embodiment of a subscriber according to theinvention for the communications system in FIG. 1;

FIG. 3 shows a cycle having multiple slots which are used for datatransmission via a communications medium of the communications systemaccording to FIG. 1;

FIG. 4 shows a metacycle having multiple cycles according to FIG. 3; and

FIG. 5 shows a preferred embodiment of a communications controller and abus guardian of a subscriber according to the invention as in FIG. 2.

In FIG. 1 a communications system according to the invention is denotedin its entirety by the reference numeral 1. The communications system 1comprises a communications medium 2, which takes the form of a data bus.The communications system takes the form, for example of a data bus. Inaddition to the bus structure of the communications medium 2 shown inFIG. 1 this can also have a star structure or a any other structure.Connected to the communications medium 2 are subscribers 3 (which arealso referred to as nodes), which are denoted by A, B, C, . . . E. Thecommunications system 1 is, for example, a FlexRay communicationssystem.

FIG. 2 shows the construction of the subscribers 3 in detail. Eachsubscriber 3 comprises a host controller 4, a communications controller5, a bus guardian 6 and a bus driver 7. The host 4 configures both thecommunications controller 5 and the bus guardian 6 with all relevantconfiguration data. In particular, both are configured with sequenceinformation. The sequence information contains details of whichsubscriber 3 may transmit data when, via the communications medium 2.

The logic components represented in the figures can naturally be freelycombined with one another. Thus a combined bus driver (BD)/bus guardian(BG) device, for example, is feasible.

In a FlexRay communications system 1 data are transmitted in recurrentcycles (cf. FIG. 3). Each cycle 8 comprises six slots 9, 10 for the userdata of the subscribers 3. Whilst the first, second, fourth, fifth andsixth slots 9 are assigned to a single subscriber 3, the third slot 10is intended for the transmission of user data of different subscribers 3(A, C, F) in different cycles 8.

FIG. 4 shows a so-called metacycle 11 for data transmission, which inthis example comprises three cycles 8. It can clearly be seen that thesubscriber A transmits user data in the third slot 10 during the firstcycle 8. During the second cycle 8 the subscriber C transmits user datain the third slot 10, and during the third cycle 8 the subscriber Ftransmits user data in the third slot 10.

The sequence information with which the communications controller 5 andthe bus guardian 6 are configured, comprises the length of acommunications cycle 8, the length of a static segment (for example aTDMA (time divisional multiple access)-based segment), the length of adynamic segment (a segment, in which the transmission of a slot within alimited time cannot be guaranteed) and various other protocol-specificsegments.

Each subscriber 3 may have no slot, or one or more slots in the staticsegment, within which the subscriber 3 may transmit data. The host 4detects this information and configures the communications controller 5and the bus guardian 6 according to this information.

In addition to this already defined flowchart some slots in the staticsegment are configured as slots 10 configures, via which user data ofdifferent subscribers 3 can be transmitted in different cycles(so-called shared slot). In the example of an embodiment in FIG. 3 theslot 10 would be such a slot useable by multiple subscribers A, C, F.Subscribers 3 not seeking to transmit any data in such a shared slot 10useable by multiple subscribers 3 need not necessarily know that theseshared slots 10 useable by multiple subscribers 3 have a special status.The subject matter of the present invention is downwardly compatiblewith FlexRay communications systems, which do not support any sharedslots 10 useable by multiple subscribers 3.

In FlexRay communications systems a so-called cycle counter is provided,which assigns a code to the different successive cycles 8. The cyclecounter represents a condition universally available throughout thecommunications system 1, on the basis of which it is possible to decidewhether or not a subscriber 3 in the current cycle 8 may transmit userdata in the shared slot 10 useable by multiple subscribers 3. The cyclecounter can assume values between 0 and 63. Thus up to 64 differentsubscribers 3 can use a shared slot 10 useable by multiple subscribers3. Should more subscribers 3 wish to use the shared slot 10 useable bymultiple subscribers 3, the admissible range of the cycle counter wouldhave to be increased. The shared slot 10 useable by multiple subscribers3 can be used for the exchange of network, control or statusinformation. In this case a specific value of the cycle counter would beassigned to each subscriber 3. In this way it is possible to ensure thateach subscriber 3 can signal its status within a specific period oftime, only a small part of the bandwidth being needed for signaling. Themethod according to the invention affords advantages particularly wherein specific applications it is unacceptable for each subscriber 3 to beassigned its own static slot 9, since this leads to a large length ofthe cycle 8.

Each host 4 of a subscriber 3 is preconfigured with information on thecycle 8 in which the communications controller 5 may transmit slotswithin a shared slot 10 useable by multiple subscribers 3. During theconfiguration phase the host 4 relays the configuration data to thecommunications controller 5 and to the bus guardian 6, the configurationphase preceding the start-up of the communications system 1.

The communications controllers of a FlexRay communications system startup in a manner known in the art. They establish a universal time baseand initialize their sequences. As soon as a communications controller 5is synchronized with another subscriber 3, it signals the start of thefirst cycle 8, in which the communications controller 5 seeks totransmit slots, to the bus guardian 6 by means of a so-called ARMsignal. The shared slot 10 useable by multiple subscribers 3 cannot yetbe used, since the bus guardian 6 does not know which cycle 8 thecommunications system 1 is in. For this reason the bus guardian 6initially refuses the communications controller 5 access to thecommunications medium 2 via a shared slot 10.

That subscriber 3 which initiates a cold start initializes its cyclecounter to 0, but all subscribers 3 which then start up (so-calledintegrating subscribers or integrating nodes) can be incorporated intothe communications system 1 at the start of each freely selectable cycle(the so-called arbitrary cycle). As soon as the cycle counter hasreached its maximum value and is reset to 0, the communicationscontroller 5 sends a special ARM signal to the bus guardian 6, in thisexample a extended signal pulse. Henceforth the bus guardian 6determines whether the extended ARM signal is present after each 64cycles 8. The bus guardian 6 also permits data transmission in theshared slot 10 useable by multiple subscribers 3 for those cycles 8which have been configured by the host 4.

A further example of an embodiment of the present invention will bedescribed below. It is based on a FlexRay communications system 1, as isshown in FIG. 1. In addition to the flowchart already defined, in thisexample of an embodiment the subslots of the shared slot 10 useable bymultiple subscribers 3 are dynamically assigned to the subscribers 3after starting-up. On one application level each subscriber 3 isassigned the required number of subslots for each shared slot 10 useableby multiple subscribers 3. In this case the number of subslots for eachshared slot 10 useable by multiple subscribers 3 was known beforehandand was also known to the host controller 4, which has relayed thisinformation to the bus guardian 6.

The communications system 1 starts up quite normally. After starting upthe hosts 4 can exchange information and the mechanism of theapplication level can distribute the information on which subscriber 3may transmit during which subslot of which shared slot 10 useable bymultiple subscribers 3.

The bus guardian 6 monitors the TXEN (transmission enable) signal of thecommunications controller 5, by means of which the communicationscontroller 5 of the bus driver 7 requests access to the communicationsmedium 2. For each shared slot 10 useable by multiple subscribers 3 inthe flowchart, the bus guardian 6 has a special counter, with which itcounts the number of subslots during which the communications controller5 assigned to the bus guardian 6 has accessed the communications medium2. When the predefined maximum value is reached, the bus guardian 6prevents further access until the cycle counter attains thepreconfigured value, which in the case of a FlexRay communicationssystem 1 is zero. The counters are then reset and access to thecommunications medium 2 during the shared slot 10 useable by multiplesubscribers 3 is again permitted until the counters reach their maximumvalue again.

The present invention therefore does not, as hitherto, merely assign atleast one of the slots to a single subscriber 3 but creates a facilityallowing different subscribers 3 (A, C, F) to transmit data via thisslot 10 in different cycles 8. In addition it affords the facility forusing a special bus guardian 6 to monitor subscribers 3 (A, C, F), whichaccess such a shared slot 10 useable by multiple subscribers 3 andtransmit data via this, in order, for example, to prevent a singledefective subscriber 3 exclusively occupying the entire bandwidth of thecommunications medium 2 (so-called babbling idiot). This can be achievedin that the bus guardian 6 of the subscriber 3 has access to auniversally available condition, in this example to the cycle counter,which serves to define which of the subscribers 3 in the current cycle 8may transmit data in the shared slot 10 useable by multiple subscribers3. A local counter of the bus guardian 6 is synchronized with the cyclecounter, so that an entitlement of the subscriber 3 to transmit data inthe current cycle 8 data can be monitored on the basis of the localcounter.

Various possibilities are proposed for synchronizing the local counterof the bus guardian 6 with the universally available cycle counter. Onefeasible option is direct synchronization, in which the counter isactively synchronized by means of a synchronization signal. Anotherpossibility is indirect synchronization, in which the bus guardian 6first observes the transmission mode of the subscriber assigned to it,the counter being synchronized accordingly.

A signal that is already present in the subscriber 3 and is applied tothe bus guardian 6, such as the ARM signal, may be used assynchronization signal. Synchronization can occur when this signal firstassumes a predefinable value after starting up the communications system1. Synchronization can equally well occur when this signal has apredefinable signal pattern. Alternatively, an independent signalingsignal may be provided, which is applied to a separate or hithertounused pin on the bus guardian 6.

For performing the method according to the invention, informationrelating to the cycle 8 in which the subscriber 3 may transmit data viathe communications medium 2 is filed at least in the communicationscontroller 5 of a subscriber 3. Data to be transmitted are transmittedonly when the universal cycle counter has assumed a value correspondingto the cycle for which the subscriber 3 has a transmission entitlementin the shared slot 10 useable by multiple subscribers 3. For thispurpose the communications controller 5 must check the current value ofthe cycle counter and compare it with the configuration data. If thecomparison a results in a match, the communications controller 5 sends adata transmission instruction to the bus driver 7.

If the communications controller 5 is protected by a bus guardian 6,this bus guardian 6 must be synchronized with the cycle counter and mustenter the current value of the cycle counter, compare it withconfiguration data and in the event of a match must grant the bus driver7 permission to transmit the data.

For this purpose computing elements, in particular microprocessors, areprovided in the communications controller 5 and/or in the bus guardian6, on which elements a computer program is run, which is programmed toperform the method according to the invention. FIG. 5 shows thecommunications controller 5 and the bus guardian 6 in schematic form.They have an electrical memory storage element 10, which takes the form,in particular, of a flash memory. The computer program, which isprogrammed to perform the method according to the invention is stored onthe memory storage element 10. The computer program is executed bytransferring it, either in sections or in its entirety, to the computingelement 11 where it is run. The computer program is transferred from thememory storage element 10 to the computing element 11 via a datatransmission connection 12. The data transmission connection 12 takesthe form, for example, of a bus system. The results of calculations,which are obtained during the running of the computer program on thecomputing element 11, can also be transferred in the opposite directionvia the data transmission connection 12 to the memory storage element 10where they are stored.

The present invention can also obviously be implemented in the form ofhardware. This has the advantage that the bus guardian 6 does not need aseparate computing element 11 (processor), on which the computer programis executed. Instead, the bus guardian 6 can be expanded by means ofvery few additional hardware components, so that it can perform themethod according to the invention.

1. A method of transmitting user data via a communications medium (2)between subscribers (3) connected to the communications medium(2),wherein the data are transmitted in recurrent cycles (8) and in eachcycle (8) at least one slot (9, 10) is intended for the user data of atleast one subscriber (3), characterized in that at least one of theslots (10) is used for the transmission of the user data of differentsubscribers (3) in different cycles (8).
 2. A method as claimed in claim1, characterized in that one of the subscribers (3) decides, on thebasis of a condition universally available to all subscribers (3),whether in the current cycle (8) it may transmit user data in at leastone shared slot (10) used by multiple subscribers (3).
 3. A method asclaimed in claim 2, characterized in that a cycle counter, whichconsecutively numbers successive cycles (8) within a metacycle (11) isused as universally available condition, wherein a metacycle (11)comprises multiple cycles (8).
 4. A method as claimed in claim 2,characterized in that_a bus guardian (6) assigned to one of thesubscribers (3) determines whether the subscriber (3) may transmit userdata in the current slot (9, 10) of the current cycle (8), wherein thebus guardian (6) has at least indirect access to the universallyavailable condition.
 5. A method as claimed in claim 3, characterized inthat the bus guardian (6) has a counter, which is synchronized with thecycle counter.
 6. A method as claimed in claim 5, characterized in thatthe counter of the bus guardian (6) is synchronized with the cyclecounter by means of a synchronization signal.
 7. A method as claimed inclaim 6, characterized in that a signal already present in the busguardian (6) is used as synchronization signal.
 8. A method as claimedin claim 7, characterized in that the signal already present in the busguardian (6) assumes a predefinable value at a predefinablesynchronization time and the counter of the bus guardian (6) issynchronized to the cycle counter, when the signal assumes thepredefinable value.
 9. A method as claimed in claim 8, characterized inthat the signal already present in the bus guardian (6) assumes thepredefinable value for the first time at the predefinablesynchronization time.
 10. A method as claimed in claim 6, characterizedin that a separate signal not originally present in the bus guardian (6)is used as synchronization signal.
 11. A method as claimed in claim 10,characterized in that the signal not originally present in the busguardian (6) is an existing signal present in the bus guardian (6) whichhas a predefinable value not originally present or a specific signalpattern.
 12. A method as claimed in claim 5, characterized in that thecounter of the bus guardian (6) is synchronized in that the bus guardian(6) observes the transmission mode of the subscriber (3) assigned to itand synchronizes the counter accordingly.
 13. A method as claimed inclaim 4, characterized in that information on which slot (9, 10) andwhich cycle (8) the subscriber (3) assigned to the bus guardian (6) mayuse to transmit user data is filed in the bus guardian (6) as apreliminary to the data transmission.
 14. A method as claimed in claim4, characterized in that the bus guardian (6) obtains information onwhich slot (9, 10) and which cycle (8) the subscriber (3) may use totransmit user data by observing the transmission mode of the subscriber(3) assigned to it, and the information is filed in the bus guardian(6).
 15. A method as claimed in claim 14, characterized in that theobtaining of information by the bus guardian (6) is undertaken undercertain boundary conditions.
 16. A computer program which is capable ofrunning on a computing element (11), in particular on a microprocessor,characterized in that the computer program is programmed to perform amethod as claimed in claim
 1. 17. A computer program as claimed in claim16, characterized in that the computer program is stored on a memorystorage element (10), in particular on a random access memory, on aread-only memory or on a flash memory.
 18. A subscriber (3) which can beconnected to a communications medium (2) for the transmission of userdata via the communications medium (2) to further subscribers (3) thatcan be connected to the communications medium (2), wherein the data aretransmitted in recurrent cycles (8) and at least one slot (9, 10) ineach cycle (8) is intended for the user data of at least one subscriber(3), characterized in that at least one of the slots (10) is intendedfor the transmission of the user data of different subscribers (3) indifferent cycles (8) and the subscriber (3) in a predefinable cycle (8)transmits user data in the shared slot (10) useable by multiplesubscribers (3).
 19. A bus guardian (6), which is assigned to asubscriber (3) connectable to a communications medium (2), wherein thesubscriber (3) is designed for the transmission of user data via thecommunications medium (2) to further subscribers (3) connected to thecommunications medium (2), and wherein the data are transmitted inrecurrent cycles (8) and at least one slot (9, 10) in each cycle (8) isintended for the user data of at least one subscriber (3), characterizedin that at least one slot (9, 10) is provided, via which user data ofdifferent subscribers (3) can be transmitted in different cycles (8),wherein the bus guardian (6) determines whether the subscriber (3) maytransmit user data in the current slot (10) of the current cycle (8).20. A bus guardian (6), which is assigned to a subscriber (3)connectable to a communications medium (2), wherein the subscriber (3)is designed for the transmission of user data via the communicationsmedium (2) to further subscribers (3) connected to the communicationsmedium (2), and wherein the data are transmitted in recurrent cycles (8)and at least one slot (9, 10) in each cycle (8) is intended for the userdata of at least one subscriber (3), characterized in that at least oneslot (9, 10) is provided, via which user data of different subscribers(3) can be transmitted in different cycles (8), wherein the bus guardian(6) determines whether the subscriber (3) may transmit user data in thecurrent slot (10) of the current cycle (8) characterized in that the busguardian (6) has means of performing a method as claimed in claim
 2. 21.A communications system (1) comprising a communications medium (2) and aplurality of subscribers (3) connected thereto, wherein user data aretransmitted between the subscribers (3) via the communications medium(2) in recurrent cycles (8) and at least one slot (9, 10) in each cycle(8) is intended for the user data of at least one subscriber (3),characterized in that at least one of the slots (10) is intended for thetransmission of the user data of different subscribers (3) in differentcycles (8).
 22. A communications system (1) as claimed in claim 21,characterized in that a bus guardian (6), which determines whether thesubscriber (3) may transmit user data in the current slot (9, 10) of thecurrent cycle (8) is assigned to at least one of the subscribers (3) ofthe communications system (1).
 23. A communications system (1)comprising a communications medium (2) and a plurality of subscribers(3) connected thereto, wherein user data are transmitted between thesubscribers (3) via the communications medium (2) in recurrent cycles(8) and at least one slot (9, 10) in each cycle (8) is intended for theuser data of at least one subscriber (3), characterized in that at leastone of the slots (10) is intended for the transmission of the user dataof different subscribers (3) in different cycles (8), characterized inthat a bus guardian (6), which determines whether the subscriber (3) maytransmit user data in the current slot (9, 10) of the current cycle (8)is assigned to at least one of the subscribers (3) of the communicationssystem (1), characterized in that the bus guardian (6) has means ofperforming a method as claimed in claim 2.